1. Field of the Invention
The present invention relates to a color characteristic description apparatus for use in a system for handling images, a color management apparatus and an image converting apparatus to which the color characteristic description apparatus is applied and a color correction method.
2. Description of the Related Art
FIG. 29 shows one of tag types which are elements of a profile for describing a color characteristic disclosed in, for example, “ICC Profile Format Specification, Version 3.3, Nov. 11, 1996, International Color Consortium”. Referring to FIG. 31, bytes 0 to 3 are identifiers, 4 to 7 are reserved bytes, 8 is the number of input channels, 9 is the number of output channels, 10 is the number of grid points in multidimensional lookup table to be described later, 11 is a reserved byte for padding, 12 to 15, 16 to 19, 20 to 23, 24 to 27, 28 to 31, 32 to 35, 36 to 39, 40 to 43 and 44 to 47 are encoded parameters eij (i, j=0 to 2), 48 to m are input one-dimensional tables, m+1 to n are n-dimensional m bytes (n is the number of input channels and m is the number of output channels). The above-mentioned table is also called a multidimensional lookup table. Note that n+1 to o is an output one-dimensional lookup table.
A process for converting a supplied image signal into an output image signal by using data shown in FIG. 29 is shown in FIG. 30. Referring to the drawing, C1 shows a conventional process for converting an image signal. A supplied image signal is first subjected to a process C11 using a matrix. The matrix is described with parameter eij (i, j=0 to 2) of tag types 12 to 15, 16 to 19, 20 to 23, 24 to 27, 28 to 31, 32 to 35, 36 to 39, 40 to 43 and 44 to 47. The calculation is performed in accordance with Equation 1 on an assumption that a supplied image signal is [X, Y, Z]:
                              [                                                                      X                  ′                                                                                                      Y                  ′                                                                                                      Z                  ′                                                              ]                =                              [                                                            e00                                                                                                                                          e01                                                                                                                                          e02                                                                              e10                                                                                                                                          e11                                                                                                                                          e12                                                                              e20                                                                                                                                          e21                                                                                                                                          e22                                                      ]                    ⁡                      [                                                            X                                                                              Y                                                                              Z                                                      ]                                              (        1        )            
In the foregoing formula, [X′, Y′, Z′] is a value of the signal converted into the matrix. Note that the process using the matrix is performed only when the color space of the supplied image signal is XYZ color space.
Then, a process C12 using an input one-dimensional lookup table is performed. The input one-dimensional lookup table is composed of data written in 48 byte to m byte of a tag type. One-byte data corresponding to input signal 0 to 255, that is, 256-byte data is used as data for one channel. The input one-dimensional lookup table is composed of input channel data (256×input channels). Assuming that an input signal is [A0, B0, C0], a calculation is performed in accordance with Equation 2.
                                                        A1              =                                                f                  1                                ⁡                                  (                  A0                  )                                                                                                        B1              =                                                g                  1                                ⁡                                  (                  B0                  )                                                                                                        C1              =                                                h                  1                                ⁡                                  (                  C0                  )                                                                                        (        2        )            
In the foregoing equation, [A1, B1, C1] is a value of the signal subjected to the process using the input one-dimensional lookup table. Moreover, f1, g1 and h1 are functions indicated by the input one-dimensional lookup table for each channel.
Then, a process C13 using a multidimensional lookup table is performed. The multidimensional lookup table is composed of data written in m+1 to n bytes of the tag type. In an example case of a three-dimensional input and three- dimensional output multidimensional lookup table, a value [A2, B2, C2] (three bytes) of a signal obtained by subjecting an input signal [A1, B1, C1] (three byte) to the process using the multidimensional lookup table is composed of data for the number of input signals corresponding to grid points of the multidimensional lookup table. The byte size of the multidimensional lookup table is expressed by the following Equation 3.TableSize=GridpointInputchannels·OutputChannels  (3)
In the foregoing equation, “Tablesize” is the size of the multidimensional lookup table, “GridPoints” is the number of grid points of the multidimensional lookup table, “InputChannels” is the number of input channels and “OutputChannels” is the number of output channels.
The process using the multidimensional lookup table is performed as follows. Assuming that the input signal is [A1, B1, C1], a value of the processed signal is [A2, b2, C2] and the process using the multidimensional lookup table is expressed by F, a calculation is performed in accordance with Equation 4. The foregoing process is characterized in that combined data [A1, B1, C1] of the input signals for three channels is performed.[A2, B2, C2]=F([A1 B1 C1])  (4)
Then, a process C14 using an out put one-dimensional lookup table is performed. The input one-dimensional lookup table is composed of data written on n+1 byte to o byte of the tag type. Similarly to the input one-dimensional lookup table, the output one-dimensional lookup table is composed of one-byte data corresponding to 0 to 255 of the input signal, that is, the input one-dimensional lookup table is composed of data of input channels (256×input channels) on an assumption that 256-byte data is data for one channel. Assuming that an input signal is [A2, B2, C2], a calculation is performed in accordance with Equation 5.
                                                        A3              =                                                f                  2                                ⁡                                  (                  A2                  )                                                                                                        B3              =                                                g                  2                                ⁡                                  (                  B2                  )                                                                                                        C3              =                                                h                  2                                ⁡                                  (                  C2                  )                                                                                        (        5        )            
In the foregoing equation, [A3, B3, C3] is a value of the signal subjected to the process using the output one- dimensional lookup table and f2, g2 and h2 are functions indicated by the output one-dimensional lookup table for each channel.
The conventional tag type which is an element of a profile for describing the color characteristic disclosed in “ICC Profile Format Specification, Version 3.3, Nov. 11, 1996, international Color Consortium” has been described as described above. Moreover, the signals have been processed as described above in accordance with described data. Therefore, the profile of a color device having a complicated color characteristic has a problem in that the size of the multidimensional lookup table is enlarged excessively. For example, the size of a three-dimensional input and four-dimensional output multidimensional lookup table having 65 grid points is 1,098,500 bytes, which is about one megabyte which is calculated in accordance with above-mentioned Equation (3). What is worse, the multidimensional lookup table of the above-mentioned type cannot satisfactorily describe the color characteristic of the actual color device. If the table having the above-mentioned size is added to image data which is handled by the color device, the quantity of data corresponding to the above-mentioned volume is enlarged. In the foregoing case, communication cost is enlarged excessively when image data is communicated through a communication line or the like.